//封装网络请求抽象类，子类继承抽象类实现该方法  实现只需要实现子类对象

import 'dart:convert';

import 'package:changxindianzishangwu/http/base/ec_base_request.dart';

abstract class EcNetAdapter {
  Future<EcNetResponse> send<T>(EcBaseRequest request);
}

class EcNetResponse<T> {
  //返回的数据

  T data;
  //请求的哪个接口
  EcBaseRequest request;

  //返回状态码
  int statusCode;

  //返回的信息
  String statusMessage;

  //其他 或整个response
  dynamic extra;

  EcNetResponse(
      {this.data,
      this.request,
      this.statusCode,
      this.statusMessage,
      this.extra}); // 测试时使用
  @override
  String toString() {
    if (data is Map) {
      return json.encode(data);
    }
    return data.toString();
  }
}
